package com.itheima.loopingthroughstrings;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Date;
import java.util.Scanner;

public class Test {
    /*
> 字符串数据："熊大,20,男,上海,2003-03-10;熊二,19,男,北京,2004-03-10;翠花,20,女,上海,2003-01-10"

> 集合： ArrayList<User> userList = new ArrayList<>();
>
> User对象属性：姓名[String]、年龄[int]、性别[char]、城市[String]、出生日期、创建时间
>
> - 创建时间，就是创建当前User对象时的当前系统日期时间
>
> 备注：和日期时间相关的数据使用JDK8中新的API对象

- 功能1：向集合中存储多个User对象
- 功能2：打印输出2000年1月1日后出生的User对象信息
 */
    public static void main(String[] args) {
     /*   Date date=new Date();
        SimpleDateFormat simpleDateFormat2=new
                SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String str=simpleDateFormat2.format(new Date());
        date = simpleDateFormat2.parse("2023-07-30 15:25:33");*/
        Scanner scanner = new Scanner(System.in);

        ArrayList<User> list = new ArrayList<>();
        String str="Y";
        do {
            System.out.println("1.添加对象");
            System.out.println("2.打印特定对象");
            System.out.println("3.退出");
            int num=scanner.nextInt();
            if (num==1){
                list.add(addUser(scanner));
            }else if (num==2){
                printUser(list);
            }else if (num==3){
                return;
            } else {
                System.out.println("输入错误");
            }

        }while (str.equals("Y")==true);
        System.out.println(list.get(0).toString());
    }

    //添加对象
    public static User addUser(Scanner scanner) {
        User user = new User();
        System.out.println("请输入名字");
        user.setName(scanner.next());
        System.out.println("请输入年龄");
        user.setAge(scanner.nextInt());
        System.out.println("请输入性别：男；女");
    /*
      wc: while (true) {
 int num=scanner.nextInt();
            if (num== 1 ) {
                user.setSex(scanner.nextInt() == 1 ? '男' : '女');
                break wc;
            } else if ( num == 2){
                user.setSex(scanner.nextInt() == 1 ? '男' : '女');
                break wc;
            }else{
                System.out.println("请重新输入");
            }*/

        user.setSex(scanner.next().charAt(0));
        System.out.println("请输入居住城市");
        user.setCity(scanner.next());

        System.out.println("请输入出生年月日 格式为： yyyy MM dd");
        LocalDate of = LocalDate.of(scanner.nextInt(), scanner.nextInt(), scanner.nextInt());
        user.setBirthDay(of);

        Date date=new Date();
        //,2003-03-10;
        SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
       LocalDate time = LocalDate.now();
       user.setTime(time);
        return user;
    }

    //打印- 功能2：打印输出2000年1月1日后出生的User对象信息
    public static void printUser(ArrayList<User> list) {

        LocalDate of = LocalDate.of(2000, 1, 1);
        for (int i = 0; i < list.size(); i++) {
            if (list.get(i).getBirthDay().isAfter(of) == true) {
                System.out.println(list.get(i).toString());
            }

        }


    }

}
